﻿#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

//int main()
//{
//	int a = 0;
//	int b = 0;
//	while (scanf("%d %d",&a, &b) == 2)
//	{
//		int c = a + b;
//		printf("%d\n", c);
//	}
//	return 0;
//}
//int main()
//{
//	int a = 0, b = 0;
//	while (scanf("%d %d", &a, &b) == 2)
//	{
//		int shang = a / b;
//		int yushu = a % b;
//		printf("%d %d\n", shang, yushu);
//	}
//	
//	return 0;
////}
////闰年的判断
//int main()
//{
//	int year = 0;
//	scanf("%d", &year);
//	if (year%4==0&&year%100!=0||year%400==0)
//	{
//		printf("这是闰年");
//	}
//	else
//	{
//		printf("这不是闰年");
//	}
//
//	return 0;
//}
//

////if语句的例子
////int main()
////{
////	int a;
////	scanf("%d", &a);
////	if (a % 2 == 1)
////	{
////		printf("这个数是奇数");
////	}
////	else
////	{
////		printf("这个数不是奇数");
////	}
////	return 0;
////条件操作符的例子
////int main()
////{
////	int a=0, b=0 ,c=0;
////	scanf("%d %d", &a, &b);
////	c = (a > b ? a : b);
////	printf("%d", c);
////	return 0;
////}
//
////int  main()
////{
////	int a=0;
////	scanf("%d", &a);
////	a为假，则做一些事情
////	if (a == 0)
////	{
////		printf("do some thing\n", a);
////	}
////	if (!a)
////	{
////		printf("do some thing\n", a);
////
////	}
////	return 0;
////}
////switch语句
////int main()
////{
////	int a = 0;
////	scanf("%d", &a);
////	switch (a % 3)
////	{
////	case 0:
////		printf("余数为0\n");
////		break;
////	case 1:
////		printf("余数为1\n");
////		break;
////	case 2:
////		printf("余数为2\n");
////		break;
////	}
////
////	return 0;
////}
// //while循环
////int main()
////{
////	int a = 1;
////	while (a<=10)
////	{
////		printf("%d\n",a);
////		a++;
////	}
////	return 0;
////}
//// 输入一个正整数，逆序打印这个整数的每一位
////例如：输入1234，输出4 2 3 1
////int main()
////{
////	int a = 0, c = 0;
////	scanf("%d", &a);
////
////	while (a)
////	{
////		 c = a % 10;
////		printf("%d ",c  );
////		a = a / 10;
////	}
////	
////	return 0;
////}
//// 使用for循环打印1~10
////int main()
////{
////	int i = 0;
////	for (i = 1; i <= 10; i++)
////	{
////		printf("%d.\n", i);
////	}
////	return 0;
////}
//// do.while循环
////int main()
////{
////	int a = 1;
////	
////	do
////	{
////		printf("%d ", a);
////		a++;
////	} while (a <= 10);
////	return 0;
////}
//​
////使用while循环打印1~10的数字
// break与continue的使用测试
//int main()
//{
//	int a = 1;
//	
//	while (a <= 10)
//	{
//		a++;
//		if (a== 4)
//		continue;
//		printf("%d ", a);
//		
//
//	}
//
//	return 0;
//}
//习题
// 找出100~200之间的素数，并打印在屏幕上
//​注：素数又称质数，只能被一和自身整除的数字
//1.是素数就打印不是就跳出循环
//2.拿2~a-1的数字去整除b
//int main()
//{
//	int a=0, i=2;
//	int count = 0;
//	for (a = 100; a <= 200; a++)
//	{
//		int b = 0;
//		int c = 1;//标记值
//		for (b = 2; b <= a - 1; b++)
//		{
//			if (a % b == 0)
//			{
//				c = 0;
//				break;//跳出一层循环
//			}
//		}
//		if (c == 1)
//		{
//			printf("%d ", a);
//			count++;
//		}
//		
//	}
//	printf("\n素数的个数为:> %d", count);
//	return 0;
//}
// goto语句
//int main()
//{
//	again:
//	printf("hello world\n");
//	printf("hello world\n");
//	printf("hello world\n");
//	printf("hello world\n");
//	printf("hello world\n");
//	goto again;
//	return 0;
//}
//猜数字游戏
//1.电脑自动生成1~100的随机数
//2。玩家猜数字，猜数字的过程中，根据猜数字的大小给出打了或小了的反馈，
// 直到猜对，游戏结束。

//#include<time.h>
//void game()
//{
//	srand((unsigned int)time(NULL));
//	int i = 0;
//	int ret = rand() % 100 + 1;
//	int count = 10;
//	while (count)
//	{
//		printf("你还有 %d 次机会\n",count);
//		scanf("%d", &i);
//		if (i == ret)
//		{
//			printf("恭喜你，猜对了！！！\n");
//			break;
//		}
//		else if (i <= ret)
//		{
//			printf("猜小了\n");
//		}
//		else
//		{
//			printf("猜大了\n");
//		}
//		count--;
//		if (count == 0)
//		{
//			printf("很遗憾你猜错了");
//		}
//	}
//	
//}
//void menu()
//{
//	printf("***********************\n");
//	printf("***** 1.开始游戏  *****\n");
//	printf("***** 0.结束游戏  *****\n");
//	printf("***********************\n");
//
//}
//int main()
//{
//	int input = 0;
//	do
//	{
//		menu();
//		printf("请选择：>");
//		scanf("%d", &input);
//		switch (input)
//		{
//		case 1:
//			game();
//			break;
//		case 0:
//			printf("退出游戏\n");
//			break;
//		default:
//			printf("选择错误，请重新选择");
//		}
//	} while (input);
//	return 0;
//}
//编程实现9个评委给某个参赛选手打分，去掉一个最高分和一个最低分，求该参赛选手的平均分。
//int main()
//{
//	int c = 0;
//	int arr[9] = { 0 };
//	int i = 0;
//	for (i = 0; i < 9; i++)
//	{
//		scanf("%d", &arr[i]);
//	}
//	int max = arr[0];
//	int min = arr[0];
//	for (i=1;i<9;i++)
//	{
//		if (max < arr[i])
//		{
//			max = arr[i];
//		}
//		if (min > arr[i])
//		{
//			min = arr[i];
//		}
//	}
//	for (i = 0; i < 9; i++)
//	{
//		
//		c = c + arr[i];
//	}
//	float d = 0;
//	d = (c - max - min) / 7;
//	printf("%f", d);
//	return 0;
//}
//用选择法或冒泡法对10个整数进行排序。10个整数用scanf函数输入
//#include <stdio.h>
//
//void selection_sort(int arr[], int n) {
//    for (int i = 0; i < n - 1; i++) {
//        int min_index = i;
//        for (int j = i + 1; j < n; j++) {
//            if (arr[j] < arr[min_index]) {
//                min_index = j;
//            }
//        }
//        if (min_index != i){
//            int temp = arr[i];
//            arr[i] = arr[min_index];
//            arr[min_index] = temp;
//        }
//    }
//}
//
//int main() {
//    int arr[10];
//    printf("请输入10个整数：\n");
//    for (int i = 0; i < 10; i++) {
//        scanf("%d", &arr[i]);
//    }
//    selection_sort(arr, 10);
//    printf("排序后的数组为：\n");
//    for (int i = 0; i < 10; i++) {
//        printf("%d ", arr[i]);
//    }
//    printf("\n");
//    return 0;
//}
//#include <stdio.h>
//
//int main() {
//    int num, temp, encrypted_num = 0;
//    printf("请输入一个四位整数：");
//    scanf("%d", &num);
//
//    // 加密规则为每位数字都加上5，然后用和除以10的余数代替该数字
//    for (int i = 0; i < 4; i++) {
//        temp = (num % 10 + 5) % 10;
//        encrypted_num = encrypted_num * 10 + temp;
//        num /= 10;
//    }
//
//    // 交换第一位和第四位，第二位和第三位
//    int swapped_num = ((encrypted_num / 1000) * 1000) + ((encrypted_num / 100) % 10 * 1000) + ((encrypted_num / 10) % 100 * 10) + (encrypted_num % 10);
//
//    printf("加密后的数字为：%d", swapped_num);
//        return 0;
//}
//#include <stdio.h>

//int main()
//{
//	int i = 0;
//	for (i = 0; i < 10; i++)
//	{
//		if (i = 5)
//			printf("%d ", i);
//	}
//	return 0;
//}
//写一个代码打印1 - 100之间所有3的倍数的数字
//int main()
//{
//	int i;
//	for (i = 1; i <= 100; i++)
//	{
//		if (i % 3 == 0)
//		{
//			printf("%d\t", i);
//		}
//	}
//	return 0;
//}
//写代码将三个整数数按从大到小输出。
//
//例如：
//
//输入：2 3 1
//
//输出：3 2 1
//
//int main()
//{
//	int i = 0;
//	int arr[3] = { 0 };
//	for (i = 0; i < 3; i++)
//	{
//		scanf("%d", &arr[i]);
//	}
//	int j = arr[0];
//	int k = arr[0];
//	int n = arr[0];
//	for (i = 0; i < 3; i++)
//	{
//		if (j < arr[i])
//		{
//			j = arr[i];
//		}
//		if (k > arr[i])
//		{
//			k = arr[i];
//		}
//	}
//	for (i = 0; i < 3; i++)
//	{
//		if (n<k || n>j)
//		{
//			n = arr[i];
//		}
//	}
//	printf("%d %d %d", j, n, k);
//	return 0;
//}
//三角形的判断
//int main()
//{
//	int a = 0, b = 0, c = 0;
//	
//	while(scanf("%d %d %d", &a, &b, &c)==3)
//	{
//		if (a + b > c)
//		{
//			if (a == b && a == c)
//			{
//				printf("Equilateral triangle!\n");
//			}
//			else if (a == b && a != c|| a == c && a != b || c == b && c != a)
//			{
//				printf("Isosceles triangle!\n");
//			}
//			else
//			{
//				printf("Ordinary triangle!\n");
//			}
//
//		}
//		else
//		{
//			printf("Not a triangle!\n");
//		}
//	}
//	return 0;
//}
//计算1 / 1 - 1 / 2 + 1 / 3 - 1 / 4 + 1 / 5 …… + 1 / 99 - 1 / 100 的值，打印出结果
//int main()
//{
//	float i = 0;
//	float a = 1;
//	float b = 0;
//	int c = 1;
//	for (i = 3; i <= 100; i++)
//	{
//		if(c % 2 == 1)
//		{
//			a += 1 / i;
//		}
//		c++;
//	}
//	for (i = 1; i <= 100; i++)
//	{
//		if (c % 2 == 0)
//		{
//			b -= 1 / i;
//		}
//		c++;
//	}
//	printf("%f\n", a + b);
//	return 0;
//}
//简单运算
//void menu()
//{
//	printf("****************MENU***************\n");
//	printf("***********   1.加法   ************\n");
//	printf("***********   2.减法   ************\n");
//	printf("***********   3.除法   ************\n");
//	printf("***********   4.乘法   ************\n");
//	printf("***********   5.退出   ************\n");
//	printf("***********************************\n");
//}
//int main()
//{
//
//	int input = 0;
//	float a = 0;
//	float b = 0;
//	do
//	{
//		menu();
//		printf("请选择：>");
//		scanf("%d", &input);
//		switch (input)
//		{
//		case 1:
//			printf("请输入你要计算的数字：>\n");
//			scanf("%f %f", &a, &b);
//			printf("%f\n", a + b);
//			break;
//		case 2:
//			printf("请输入你要计算的数字：>\n");
//			scanf("%f %f", &a, &b);
//			printf("%f", a - b);
//			break;
//		case 3:
//			printf("请输入你要计算的数字：>\n");
//			scanf("%f %f", &a, &b);
//			printf("%f", a / b);
//			break;
//		case 4:
//			printf("请输入你要计算的数字：>\n");
//			scanf("%f %f", &a, &b);
//			printf("%f", a * b);
//			break;
//		case 0:
//			printf("退出\n");
//			break;
//		default:
//			printf("输入错误请重新输入\n");
//		}
//	} while (input);
//
//	return 0;
//}
//判断是否为素数

//int main()
//{
//	void is_prime(int x, int y);
//	int i = 0;
//	int n = 0;
//	for(n=100;n<=200;n++)
//	//while (scanf("%d", &n) == 1)
//	{
//		is_prime(n, i);//判断是否为素数的函数
//	}
//	return 0;
//}
//void is_prime(int x, int y)
//{
//	int mark = 1;
//	for (y = 2; y < x; y++)
//	{
//		if (x % y == 0)
//		{
//			mark = 0;
//			break;
//		}
//	}
//	if (mark == 1)
//	{
//		printf("%d ", y);
//	/*	printf("这个数是素数\n");*/
//	}
//	/*else
//	{
//		printf("这个数不是素数\n");
//	}*/
//
//}
//int main()
////{
//	int i = 0;
//	int n = 0;
//	int count = 1;
//	for(n=100;n<=200;n++)
//	while (scanf("%d", &n) == 1)
//	{
//		
//		int mark = 1;
//		for (i = 2; i < n; i++)
//		{
//			if (n % i == 0)
//			{
//				mark = 0;
//				break;
//			}
//		}
//		if (mark == 1)
//		{
//			printf("这个数是素数\n");
//			printf("%d,", n);
//			count++;
//		}
//		else
//		{
//			printf("这个数不是素数\n");
//		}
//		
//	}
//	printf("\n素数的个数为：> %d",count);
//	return 0;
//}
//编写程序数一下 1到 100 的所有整数中出现多少个数字9
//int main()
//{
//	int i = 0;
//	int count = 0;
//	int c = 0;
//	for (i = 1; i <= 100; i++)
//	{
//		c = i;
//		do
//		{
//			if (c % 10 == 9)
//			{
//				count++;
//				break;
//			}
//			 c = c / 10;
//			
//		}while (c);
//	}
//	printf("%d\n", count);
//	return 0;
//}
//数组的使用
//#include<windows.h>
//#include<stdlib.h>
//int main()
//{
//	char arr1[] = "welcom to guangxi ,guangxishen!!!!!!!!";
//	char arr2[] = "**************************************";
//	int right = strlen(arr1) - 1;
//	int left = 0;
//	while (left <= right)
//	{
//		arr2[left] = arr1[left];
//		arr2[right] = arr1[right];
//		printf("%s\n", arr2);
//		Sleep(500);
//		system("cls");
//		right--;
//		left++;
//	}
//	printf("%s\n", arr2);
//
//	return 0;
//}
//二分法查找
//int main()
//{
//	int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
//	int k = 7;
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	int left = 0;
//	int right = sz - 1;
//	int flag = 0;
//	while (left <= right)
//	{
//		int  mid = (left + right) / 2;
//		if (arr[mid] < k)
//		 {
//			 left = mid + 1;
//		 }
//		 else if (arr[mid] > k)
//		 {
//			 right = mid - 1;
//		 }
//		 else
//		 {
//			 flag = 1;
//			 printf("找到了下标是 %d\n", mid);
//			 break;
//		 }
//	}
//	if (flag == 0)
//	{
//		printf("找不到了\n");
//	}
//	return 0;
//}
//打印1000年到2000年之间的闰年
//1.能被4整除而不能被100整除。
//2.能被400整除。
//int main()
//{
//	int year = 0;
//	int i = 0;
//	for (i = 1000; i <= 2000; i++)
//	{
//		year = i;
//		if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
//		{
//			printf("%d ",year);
//		}
//	}
//	return 0;
//}
//求十个整数的最大值
//int main()
//{
//	int i = 0;
//	int arr[10] = { 0 };
//	int max = arr[0];
//	for (i = 0; i < 10; i++)
//	{
//		scanf("%d", &arr[i]);
//
//	}
//	for (i = 1; i < 10; i++)
//	{
//		if (max < arr[i])
//		{
//			max = arr[i];
//		}
//	}
//	printf("最大值为 %d", max);
//	return 0;
//}
//九九乘法表
//int main()
//{
//	int a = 0;
//	int b = 0;
//	for (a = 1; a <= 9; a++)
//	{
//		
//		for (b = 1; b <= 9; b++)
//		{
//			if (b <= a)
//			{
//				printf("%d * %d = %d  ", b, a, a * b);
//			}
//			if (b == a)
//			{
//				printf("\n");
//			}
//		}
//	}
//	return 0;
//}
//给定两个数，求这两个数的最大公约数
//int main()
//{
//	int a = 0;
//	int b = 0;
//	int i = 0;
//	int max = 0;
//	int c = 0;
//	scanf("%d %d", &a, &b);
//	if (a > b)
//	{
//		max = b;
//	}
//	else
//	{
//		max = a;
//	}
//	for (i = 1;i <= max;i++)
//	{
//		if (a % i == 0 && b % i == 0)
//		{
//			c = i;
//		}
//	}
//	printf("最大公约数为:> %d", c);
//	return 0;
//}
//【一维数组】输入10个整数，求平均值
//int main()
//{
//	int i = 0;
//	float c = 0;
//	int arr[10] = { 0 };
//	for (i = 0; i < 10; i++)
//	{
//		scanf("%d", & arr[i]);
//	}
//	for (i = 0; i < 10; i++)
//	{
//		c += arr[i];
//	}
//	printf("%f", c/10);
//	return 0;
//}
//#include<windows.h>
//#include<stdlib.h>
//int main()
//{
//	char arr1[] = "*********************";
//	char arr2[] = "                     ";
//	int left = 0;
//	int right = strlen(arr1) - 1;
//	while (left <= right)
//	{
//		arr2[left] = arr1[left];
//		arr2[right] = arr1[right];
//		printf("%s\n", arr2);
//		Sleep(10);
//		left++;
//		right--;
//	}
//	/*char arr3[] = "*********************";
//	char arr4[] = "                     ";
//	int left2 = 0;
//	int right2 = strlen(arr3) -1;
//	int mid2= strlen(arr3)/2 ;
//	int mid3 = strlen(arr3) / 2 ;
//	while (mid3 <= right2)
//	{
//		arr3[mid2] = arr4[mid2];
//		arr3[mid3] = arr4[mid3];
//		printf("%s\n", arr3);
//		Sleep(10);
//		mid2--;
//		mid3++;
//	}*/
//	return 0;
//}
//int main()
//{
//
//	return 0;
//}
// X形图案
//int main() {
//    int i, j, n = 0;
//    while (scanf("%d ", &n) != EOF) { // 注意 while 处理多个 case
//        // 64 位输出请用 printf("%lld") to 
//        
//        for (i = 0; i < n; i++)
//        {
//            for (j = 0; j < n; j++)
//            {
//                if (i == j || i + j == n - 1)
//                {
//                    printf("*");
//                }
//                else
//                {
//                    printf(" ");
//                }
//            }
//
//            printf("\n");
//        }
//    }
//    return 0;
//}
//打印用“*”组成的“空心”正方形图案
//int main() {
//    int a, b;
//    int n = 0;
//    while (scanf("%d ", &n) != EOF) { // 注意 while 处理多个 case
//        // 64 位输出请用 printf("%lld") to 
//        for (a = 1; a <= n; a++)
//        {
//            for (b = 1; b <= n; b++)
//            {
//                if (a == 1 || b == n || b == 1 || a == n)
//                {
//                    printf("* ");
//                }
//                else {
//                    {
//                        printf("  ");
//                    }
//                }
//            }
//            printf("\n");
//        }
//    }
//    return 0;
//}
//矩阵转置
//int main() {
//    int n, m;
//    int i = 0, j = 0;
//
//    while (scanf("%d %d", &n, &m) != EOF) { // 注意 while 处理多个 case
//        // 64 位输出请用 printf("%lld") to 
//        int arr[n][m];
//        for (i = 0; i < n; i++)
//        {
//            for (j = 0; j < m; j++)
//            {
//                scanf("%d", &arr[i][j]);
//            }
//        }
//        for (i = 0; i < m; i++)
//        {
//            for (j = 0; j < n; j++)
//            {
//                printf("%d ", arr[j][i]);
//            }
//            printf("\n");
//        }
//    }
//    return 0;
//}
//输入10个整数，要求按输入时的逆序把这10个数打印出来。逆序输出，就是按照输入相反的顺序打印这10个数。
//int main() {
//    int arr[10] = { 0 };
//    int i = 0, a = 0, b = 0;
//    for (i = 0; i < 10; i++)
//    {
//        scanf("%d ", &arr[i]);
//    }
//    for (i = 9; i >= 0; i--)
//    {
//        printf("%d ", arr[i]);
//    }
//    return 0;
//}
//有序数列合并
//int main() {
//    int n, m;
//    int a = 0, b = 0;
//    int arr1[3000] = { 0 };
//    int arr2[3000] = { 0 };
//    while (scanf("%d %d", &n, &m) != EOF) { // 注意 while 处理多个 case
//        // 64 位输出请用 printf("%lld") to 
//        for (int i = 0; i < n; i++)
//            scanf("%d", &arr1[i]);
//        for (int j = 0; j < m; j++)
//            scanf("%d", &arr2[j]);
//        while (a < n && b < m)
//        {
//            if (arr1[a] < arr2[b])
//            {
//                printf("%d ", arr1[a]);
//                a++;
//            }
//            else
//            {
//                printf("%d ", arr2[b]);
//                b++;
//            }
//        }
//        if (a < n)
//        {
//            for (a = a; a < n; a++)
//                printf("%d ", arr1[a]);
//        }
//        else if (b < m)
//        {
//            for (b = b; b < m; b++)
//                printf("%d ", arr2[b]);
//        }
//    }
//    return 0;
//}
//【一维数组】交换数组
//int main()
//{
//	int a = 0;
//	int arrA[5] = { 1,2,3,4,5 };
//	int arrB[5] = { 6,7,8,9,0 };
//	for (int i = 0; i < 5; i++)
//	{
//		a = arrA[i];
//		arrA[i] = arrB[i];
//		arrB[i] = a;
//	}
//	for (int i = 0; i < 5; i++)
//	{
//		printf("%d ", arrA[i]);
//	}
//	printf("\n");
//	for (int i = 0; i < 5; i++)
//	{
//		printf("%d ", arrB[i]);
//	}
//	return 0;
//}
//	辣鸡学校的考试题
// 如果我每一步只能迈上1个或2个台阶。先迈左脚，然后左右交替，最后一步是迈右脚，也就是说一共要走偶数步。
// 那么，上完39级台阶，有多少种不同的上法呢？
//int main()
//{
//	int x = 0, y = 0, count = 0;
//	for (x = 1; x < 39; x++)
//	{
//		if (x % 2 == 1)
//		{
//			y = (39 - x) / 2;
//			if ((x + y) % 2 == 0)
//			{
//				count++;
//			}
//		}
//	}
//	printf("%d", count);
//	return 0;
//}
//计算我们某年某月有多少天
//int run_nian(int x)
//{
//    if (x % 4 == 0 && x % 100 != 0 || x % 400 == 0)
//		return 1;
//	else
//		return 0;
//}
//int get_days_of_month(int x, int m)
//{
//	int arr[] = { 0, 31,28,31,30,31,30,31,31,30,31,30,31 };
//	int days = arr[m];
//	if (run_nian(x) && m == 2)
//		days += 1;
//	return days;
//}
//int main()
//{
//	int month = 0, year = 0;
//	scanf("%d%d", &year, &month);
//	int days = get_days_of_month(year, month);
//	printf("%d", days);
//	return 0;
//}
//输入n值，输出如下图形，下图为n=5的图形。
//    *
//   ***
//  *****
// *******
//*********
//int main()
//{
//	int n = 0;
//	while (scanf("%d", &n)==1)
//	{
//		for (int i = 1; i <= n; i++)
//		{
//			for (int j = 1; j <= 2 * n - 1; j++)
//			{
//				if (j <= 2 * n - 1 + 1 - n - i || j > n - 1 + i)
//				{
//					printf(" ");
//				}
//				else
//				{
//					printf("*");
//				}
//			}
//			printf("\n");
//		}
//	}
//	
//
//	return 0;
//}
//报数：有n个人围成一圈，按顺序从1到n编好号。从第一个人开始报数，报到3的人退出圈子，下一个人从1开始重新报数，
// 报到3的人退出圈子。 如此下去，直到留下最后一个人。问留下来的人的编号。编写相应程序。
//#define n 15
//#include<stdlib.h>
//void Set(char arr[n], int row,char set )
//{
//	for (int i = 0; i < 15; i++)
//	{
//		 arr[i] = set;
//	}
//}
//void Print(char arr[n], int row)
//{
//	for (int i = 0; i < n; i++)
//	{
//		printf("%2c ", arr[i]);
//	}
//}
//int Count(char arr[n],int x)
//{
//	for (int i = 0; i < n; i++)
//	{
//		x += arr[i];
//	}
//	return x;
//}
//int main()
//{
//	int count = 0, count1 = 0, count2 = 0;
//	//数组初始化
//	char arr[n] = {0};
//	
//	for (int i = 1; i <= 15; i++)
//	{
//		printf("%2d ", i);
//	}
//	printf("\n");
//	
//	//放置信息
//	Set(arr, n, '0');
//	//打印数组
//	/*printf("%d", count);*/
//	count = Count(arr, count);
//	printf("%d\n", count);
//	int i = 0, y = 0;
//		for (i = 1; i < n; i++)
//		{
//			for (int j = i; j < n; j++)
//			{
//				y += arr[j];
//			}
//			printf("%d ", y);
//			Sleep(2000);
//	/*		printf("%d ", '1' * (n - 1 - i));*/
//			if (y - arr[i] == '1' * (n - 1 - i))
//			{
//				i = 0;
//			}
//			if (i % 3 == 0 && arr[i] == '0')
//			{
//				arr[i] = '1';
//			}
//			else if(arr[i]=='1')
//			{
//				i++;
//			}
//			if (i >= n - 1)
//			{
//				i = 0;
//				while (arr[i] == '1')
//				{
//					i++;
//				}
//			}
//			count1 = Count(arr, count2);
//			/*printf("%d", count1);*/
//			if (count1 == count + (n - 1))
//			{
//				break;
//			}
//				
//	    }
//			Print(arr, n);
//	return 0;
// }
//冒泡排序
//int main()
//{
//	int arr[10] = { 1,4,3,7,9,0,6,2,5,8 };
//	for (int i = 0; i < 9; i++)
//	{
//		for (int j = 0; j < 9 - i; j++)
//		{
//			if (arr[j] > arr[j+1])
//			{
//				int x = arr[j];
//				arr[j] = arr[j + 1];
//				arr[j + 1] = x;
//			}
//		}
//	}
//	for (int i = 0; i < 10; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//	return 0;
//}
//选择排序
//int main()
//{
//	int arr[10] = { 1,4,3,7,9,0,6,2,5,8 };
//	for (int i = 0; i < 9; i++)
//	{
//		for (int j = i + 1; j < 10; j++)
//		{
//			if (arr[i] > arr[j])
//			{
//				int x = arr[i];
//				arr[i] = arr[j];
//				arr[j] = x;
//			}
//		}
//	}
//	for (int i = 0; i < 10; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//	return 0;
//}
//递归
// double fac(int n)
//{
//	int y = 0;
//	if (n > 1)
//	{
//		return fac(n-1)* n;
//	}
//	else
//	{
//		return 1;
//	}
//}
//int main()
//{
//	 int n = 0;
//	while (scanf("%d", &n) !=EOF)
//	{
//		int x = fac(n);
//		printf("%d\n", x);
//	}
//	return 0;
//}
//选择排序
//#define x 10
//#define y 15
//void sort(int arrav[], int n)
//{
//	for (int i = 0; i < n - 1; i++)
//	{
//		for (int j = i + 1; j < n; j++)
//		{
//			if (arrav[i] > arrav[j])
//			{
//				int a = arrav[i];
//				arrav[i] = arrav[j];
//				arrav[j] = a;
//			}
//		}
//	}
//
//}
//void Print(int arrbv[],int m)
//{
//	for (int i = 0; i < m; i++)
//	{
//		printf("%d ", arrbv[i]);
//	}
//}
//int main()
//{
//	int arr1[x] = {1,3,4,5,2,9,0,6,7,8};
//	int arr2[y] = { 1,3,4,5,2,9,0,6,7,8 ,15,13,12,14,10};
//	sort(arr1, x);
//	sort(arr2, y);
//	Print(arr1, x);
//	printf("\n");
//	Print(arr2, y);
//	return 0;
//}
// 
	//int main()
	//{
	//	int arr[11] = { 1,2,3,4,5,6,7,8,9,2,3 };
	//	char arr2[] = "ABC";
	//	char arr3[] = "DEF";
	//	char arr4[] = "CHI";
	//	char arr5[] = "JKL";
	//	char arr6[] = "MNO";
	//	char arr7[] = "PQRS";
	//	char arr8[] = "TUV";
	//	char arr9[] = "WXYZ";
	//	int count = 0;
	//	for (int a = 0; a < 3; a++)
	//	{
	//		for (int d = 0; d < 3; d++)
	//		{
	//			for (int g = 0; g < 3; g++)
	//			{
	//				for (int j = 0; j < 3; j++)
	//				{
	//					for (int m = 0; m < 3; m++)
	//					{
	//						for (int p = 0; p < 4; p++)
	//						{
	//							for (int t = 0; t < 3; t++)
	//							{
	//								for (int w = 0; w < 4; w++)
	//								{
	//									for (int b = 0; b < 3; b++)
	//									{
	//										for (int e = 0; e < 3; e++)
	//										{
	//											printf("%c%c%c%c%c%c%c%c%c%c  ", 
	//												arr2[a], arr3[d], 
	//												arr4[g], arr5[j], 
	//												arr6[m], arr7[p], 
	//												arr8[t], arr9[w], 
	//												arr2[b], arr3[e]);
	//											count++;
	//										}
	//									}
	//								}
	//							}
	//						}
	//					}
	//				}
	//			}
	//		}

	//	}
	//	printf("%d", count);
	//	return 0;
	//}
//int fac(int n)
//{
//	int x = 0;
//	if (n > 1)
//	{
//		return fac(n - 1) * n;
//	}
//	else
//	{
//		return 1;
//	}
//}
//int main()
//{
//	int x = 0;
//	int n = 8;
//	x = fac(n);
//	printf("%d", x);
//	return 0;
//}	
// 乘法口诀表
//实现一个函数，打印乘法口诀表，口诀表的行数和列数自己指定
//如：输入9，输出9 * 9口诀表，输出12，输出12 * 12的乘法口诀表。

//int main()
//{
//	int n = 0;
//	while (scanf("%d", &n))
//	{
//		for (int i = 1; i <= n; i++)
//		{
//			for (int j = 1; j <= i; j++)
//			{
//				printf("%2d*%2d=%4d ", j, i, i * j);
//				if (j == i)
//				{
//					printf("\n");
//				}
//			}
//		}
//	}
//	
//	return 0;
//}
//实现一个函数is_prime，判断一个数是不是素数。
//利用上面实现的is_prime函数，打印100到200之间的素数。
//写一个二分查找函数
//功能：在一个升序数组中查找指定的数值，找到了就返回下标，找不到就返回 - 1.
//int bin_search(int arr[], int left, int right, int key)
//{
//	int mid = sizeof(arr) / sizeof(arr[0]) / 2 - 1;
//	while (left <= right)
//	{
//		if (arr[mid] == key)
//		{
//			printf("找到了下标为:%d\n", mid);
//			break;
//		}
//		else if (arr[mid] < key)
//		{
//			left = mid + 1;
//			mid = (left + right) / 2;
//		}
//		else
//		{
//			right = mid - 1;
//			mid = (left + right) / 2;
//		}
//	}
//	if (left > right)
//	{
//		printf("-1\n");
//	}
//}
//int main()
//{
//	int s = 0;
//	while (scanf("%d", &s) == 1)
//	{
//		int arr1[] = { 0,1,2,3,4,5,6,7,8,9 };
//		int left = 0, right = sizeof(arr1) / sizeof(arr1[0]) - 1;
//		bin_search(arr1,left,right,s);
//	}
//	return 0;
//}
//使用函数实现数组操作
//int init(int arr[10])
//{
//	for (int i = 0; i < 10; i++)
//	{
//		arr[i] = 0;
//	}
//}
//int print(int arr[10])
//{
//	for (int j = 0; j < 10; j++)
//	{
//		printtf("%d", arr[j]);
//	}
//}
//int reverse()
//{
//
//
//}
//int main()
//{
//	int arr[10];
//	return 0;
//}
//函数判断闰年
//void LeapYear(int year)
//{
//	if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
//	{
//		printf("这是闰年");
//	}
//	else
//	{
//		printf("这不是闰年");
//	}
//}
//int main()
//{
//	int year = 2001;
//	LeapYear(year);
//}
//void calculate_average(int scores[4][5]) 
//{
//	int sum = 0;
//	for (int i = 0; i < 4; i++)
//	{
//		sum += scores[i][0];
//	}
//	printf("第1门课程的平均分是：%d\n", sum / 4);
//}
//
//void find_failed_students(int scores[4][5]) 
//{
//	for (int i = 0; i < 4; i++) 
//	{
//		int fail_count = 0;
//		for (int j = 0; j < 5; j++) 
//		{
//			if (scores[i][j] < 60)
//			{
//				fail_count++;
//			}
//		}
//		int sum = 0;
//		if (fail_count >= 2) 
//		{
//			printf("学生%d的学号和全部课程成绩及平均成绩是：%d\n", i + 1);
//			for (int j = 0; j < 5; j++) 
//			{
//				printf("%d ", scores[i][j]);
//				sum += scores[i][j];
//			}
//			printf("\n平均成绩是：%d\n", sum / 5);
//		}
//	}
//}
//
//void find_excellent_students(int scores[4][5]) 
//{
//	for (int i = 0; i < 4; i++)
//	{
//		int sum = 0;
//		for (int j = 0; j < 5; j++) 
//		{
//			sum += scores[i][j];
//		}
//		double average = sum / 5.0;
//		if (average >= 90 || (scores[i][0] >= 85 && scores[i][1] >= 85 && scores[i][2] >= 85 && scores[i][3] >= 85 && scores[i][4] >= 85)) 
//		{
//			printf("学生%d的学号和全部课程成绩及平均成绩是：\n", i + 1);
//			for (int j = 0; j < 5; j++)
//			{
//				printf("%d ", scores[i][j]);
//			}
//			printf("\n平均成绩是：%.2f\n", average);
//		}
//	}
//}
//
//int main() 
//{
//	int scores[4][5] = { {85, 90, 78, 92, 88}, {70, 75, 80, 85, 90}, {90, 95, 88, 92, 87}, {80, 85, 78, 82, 88} };
//	calculate_average(scores);
//	find_failed_students(scores);
//	find_excellent_students(scores);
//	return 0;
//}
//void bubble_sort(char arr[], int n)
//{
//	for (int i = 0; i < n - 1; i++)
//	{
//		for (int j = 0; j < n - 1 - i; j++) 
//		{
//			if (arr[j] > arr[j + 1]) 
//			{
//				char temp = arr[j];
//				arr[j] = arr[j + 1];
//				arr[j + 1] = temp;
//			}
//		}
//	}
//}
//
//int main() {
//	char arr[10];
//	printf("请输入10个字符：");
//	for (int i = 0; i < 10; i++)
//	{
//		scanf("%s", &arr[i]);
//	}
//	bubble_sort(arr, 10);
//
//	printf("排序后的字符为：");
//	for (int i = 0; i < 10; i++)
//	{
//		printf("%c ", arr[i]);
//	}
//	//printf(" ");
//
//		return 0;
//}

//#include<stdio.h>
////学生个数
//#define N 10
////课程数量
//#define n 5
//
////计算每个学生的平均分
//void student_avg(int stu[N][n]) 
//{
//    for (int i = 0; i < N; i++)
//    {
//        //sum为一个学生所有课程分数总和
//        double sum = 0;
//        for (int j = 0; j < n; j++)
//        {
//            sum += stu[i][j];
//        }
//        //分数总和除以课程数就得学生的平均分
//        printf("第%d个学生的平均成绩为：%lf\n", i + 1, sum / n);
//    }
//}
//
//// 计算每门课的平均分
//void class_avg(int stu[N][n])
//{
//    for (int i = 0; i < n; i++)
//    {
//        //sum为所有学生这一门课的成绩总和
//        double sum = 0;
//        for (int j = 0; j < N; j++)
//        {
//            sum += stu[j][i];
//        }
//        //总和除以学生人数就得这门课学生的平均成绩
//        printf("第%d门课的平均成绩为：%lf\n", i + 1, sum / N);
//    }
//}
////找出所有 50 个分数中最高的分数所对应的学生和课程
//void getMax(int stu[N][n])
//{
//    //最高分数
//    int max = 0;
//    //对应的学生
//    int student;
//    //对应的课程
//    int grade;
//    //遍历所有数据
//    for (int i = 0; i < N; i++)
//    {
//        for (int j = 0; j < n; j++)
//        {
//            if (stu[i][j] > max)
//            {
//                max = stu[i][j];
//                //加一是因为数组下标从零开始的
//                student = i + 1;
//                grade = j + 1;
//            }
//        }
//    }
//    printf("最高分数是第%d名学生的第%d门成绩，分数为：%d\n", student, grade, max);
//}
//
////计算平均分方差
//double getVariance(int stu[N][n]) 
//{
//    //辅助变量
//    double temp = 0;
//    //所有学生的平均分
//    double avg;
//    //所有学生所有课程分数总和
//    double sum = 0;
//    for (int i = 0; i < N; i++)
//    {
//        for (int j = 0; j < n; j++)
//        {
//            sum += stu[i][j];
//        }
//    }
//    //总和除以人数除以课程就得平均分
//    avg = sum / (N * n);
//    for (int i = 0; i < N; i++)
//    {
//        //每个学生五门课程的平均分
//        double stdAvg = 0;
//        for (int j = 0; j < n; j++)
//        {
//            stdAvg += stu[i][j];
//        }
//        //方差就为每个学生的平均分减去所有学生的平均分的平方之和
//        temp += ((stdAvg / n) - avg) * ((stdAvg / n) - avg);
//    }
//    return temp / N;
//}
//
//int main()
//{
//    int stu[N][n];
//    int grade = 0;
//    //输入数据
//    for (int i = 0; i < N; i++)
//    {
//        for (int j = 0; j < n; j++)
//        {
//            printf("请输入第%d个学生，第%d门的成绩：", i + 1, j + 1);
//            scanf("%d", &grade);
//            stu[i][j] = grade;
//        }
//    }
//    printf("---------------\n");
//    //打印数组
//    for (int i = 0; i < N; i++)
//    {
//        for (int j = 0; j < n; j++)
//        {
//            printf("%3d ", stu[i][j]);
//        }
//        printf("\n");
//    }
//    student_avg(stu);
//    printf("---------------\n");
//    class_avg(stu);
//    printf("---------------\n");
//    getMax(stu);
//    printf("---------------\n");
//    printf("方差为%lf", getVariance(stu));
//    return 0;
//}
//void statistical(char a[])
//{
//	int letter = 0;
//	int number = 0;
//	int space = 0;
//	int other = 0;
//	for (int i = 0; a[i] != '\0'; i++)
//	{
//		if ((a[i] >= 'a' && a[i] <= 'z') || (a[i] >= 'A' && a[i] <= 'Z'))
//			letter++;
//		else if (a[i] >= '0' && a[i] <= '9')
//			number++;
//		else if (a[i] == ' ')
//			space++;
//		else
//			other++;
//	}
//	cout << "字母的个数有：" << letter << endl;;
//	cout << "数字的个数有：" << number << endl;
//	cout << "空格的个数有：" << space << endl;
//	cout << "其他个数有：" << other << endl;
//
//}
//int main()
//{
//	int a = 0x11223344;
//	int* pa = &a;
//	char* pc = (char*)&a;
//	printf("pa = %p\n", pa);
//	printf("pa + 1 = %p\n", pa + 1);
//	printf("\n");
//	printf("pc = %p\n", pc);
//	printf("pc + 1 = %p\n", pc + 1);
//	return 0;
//}
//#define n 10
//int main()
//{
//	int arr[n] = { 0 };
//	int* p = arr;
//	for (int i = 0; i < n; i++)
//	{
//		*p = 1;
//		p++;
//	}
//	return 0;
//}
//int main()
//{
//	int arr[10] = { 0 };
//	int ch[10] = { 0 };
//	printf("%d", &ch[9] - &arr[0]);
//	return 0;
//}
//指针数组
//int main()
//{
//	int a = 2, b = 3, c = 5;
//	//arr就是存放指针的数组，即指针数组
//	int* arr[10] = { &a,&b,&c,};
//	for (int i = 0; i < 3; i++)
//	{
//		printf("%d ", *(arr[i]));
//	}
//	return 0;
//}
//指针数组，模拟二维数组
//int main()
//{
//	int arr1[4] = { 1,2,3,4 };
//	int arr2[4] = { 2,3,4,5 };
//	int arr3[4] = { 3,4,5,6 };
//	int* pi[3] = { arr1,arr2,arr3 };
//	for (int i = 0; i < 3; i++)
//	{
//		for (int j = 0; j < 4; j++)
//		{
//			printf("%d ", pi[i][j]);
//		}
//		printf("\n");
//	}
//	return 0;
//}
//汉诺塔
//void move(char a,char b)
//{
//	printf(" %c->%c ", a, b);
//}
//void Hanoi(int n, char a, char b, char c)
//{
//	if (n == 1)
//	{
//		move(a, c);
//	}
//	else
//	{
//		Hanoi(n - 1, a, c, b);
//		move(a, c);
//		Hanoi(n - 1, b, a, c);
//	}
//}
//int main()
//{
//	int n = 0;
//	printf("请输入盘子的数量>:");
//	scanf("%d", &n);
//	Hanoi(n, 'A', 'B', 'C');
//
//	return 0;
//}
//青蛙跳阶
//int jump(int n)
//{
//	if (n <= 2)
//	{
//		return n;
//	}
//	else
//	{
//		return jump(n - 1) + jump(n - 2);
//	}
//}
//int main()
//{
//	int n = 0;
//	printf("请输入台阶数>:");
//	scanf("%d", &n);
//	printf("青蛙跳上%d个台阶有%d种跳法。\n", n, jump(n));
//	return 0;
//}
//int main()
//{
//	int n = 0;
//	printf("请输入青蛙要跳多少级台阶>:");
//	scanf("%d", &n);
//	int count = 0;
//	for (int i = 0; i <= n; i++)
//	{
//		for (int j = 0; j <= n; j++)
//		{
//			if (i + 2 * j == n)
//			{
//				if (i < j)
//				{
//
//				}
//				if (i > j)
//				{
//
//				}
//			}
//		}
//	}
//	printf("跳%d级台阶有%d种跳法\n", n, count);
//	return 0;
//}
//n的阶乘
//int fac(int n)
//{
//	
//	if (n > 1)
//	{
//		return fac(n - 1) * n;
//	}
//	else
//	{
//		return 1;
//	}
//}
//int main()
//{
//	int n = 0;
//	printf("请输入要阶乘的数字:>");
//	scanf("%d", &n);
//	int x = fac(n);
//	printf("%d", x);
//	return 0;
//} 
//Fact(int n)
//{
//	int ret = 1;
//	for (int i = 1; i <= n; i++)
//	{
//		ret *= i;
//	}
//	return ret;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int ret = Fact(n);
//	printf("%d", ret);
//	return 0;
//}
//求第n个斐波那契数
//1 1 2 3 5 8 13 21
//法1：递归
//A(int n)
//{
//	if (n > 2)
//		return A(n - 1) + A(n - 2);
//	else
//		return 1;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int ret = A(n);
//	printf("%d", ret);
//	return 0;
//}
//法2：迭代
//int main()
//{
//	int a = 1, b = 1, c;
//	int n = 0;
//	scanf("%d", &n);
//	if (n > 2)
//	{
//		while (n - 2)
//		{
//			c = a;
//			a = b;
//			b = b + c;
//			n--;
//		}
//	}
//	printf("%d", b);
//	return 0;
//}
//顺序打印一个整数的每一位
//void A(int n)
//{
//	int ret = 0;
//	if (n > 10)
//	{
//		ret = n % 10;
//		A(n / 10);
//		printf("%d ", ret);
//	}
//	else
//		printf("%d ", n);
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	A(n);
//	return 0;
//}
int main()
{
	int a = 1234;
	int ret = 0;
	while(a > 0)
	{
		ret = a % 10;
		a /= 10;
		printf("%d ", ret);
	}
	return 0;
}





























































































































































































